Tracking aircraft with older version of software/database and initiating autoload of latest version of software/database when aircraft is in safe state for dataload

ABSTRACT

A method for updating aircraft data is provided. The method comprises: receiving one or more messages at a ground system that one or more aircraft is in a safe state on the ground; selecting one or more aircraft in the safe state to receive a software or database update from the ground system; verifying that the selected one or more aircraft in the safe state is in need of the software or database update; initiating a remote loading of the software or database update to the verified selected one or more aircraft in the safe state; and receiving one or more messages at the ground system from the verified selected one or more aircraft indicating a status of the remote loading.

BACKGROUND

Currently, an avionics software or database update is done by a dataload, which is initiated using a data loader by an aircraft maintenance engineer who is physically required to be present in the vicinity of the aircraft. The maintenance engineer has no mechanism indicating what software or database version is available on the aircraft, nor what software or database version is available on a data loader present in an aircraft equipped with a wireless gateway.

SUMMARY

A method for updating aircraft data is provided. The method comprises: receiving one or more messages at a ground system that one or more aircraft is in a safe state on the ground; selecting one or more aircraft in the safe state to receive a software or database update from the ground system; verifying that the selected one or more aircraft in the safe state is in need of the software or database update; initiating a remote loading of the software or database update to the verified selected one or more aircraft in the safe state; and receiving one or more messages at the ground system from the verified selected one or more aircraft indicating a status of the remote loading.

BRIEF DESCRIPTION OF THE DRAWINGS

Features of the present invention will become apparent to those skilled in the art from the following description with reference to the drawings. Understanding that the drawings depict only typical embodiments and are not therefore to be considered limiting in scope, the invention will be described with additional specificity and detail through the use of the accompanying drawings, in which:

FIG. 1 is a flow diagram of a method for updating aircraft data, according to one implementation;

FIG. 2 is a block diagram of an exemplary system for updating aircraft data, according to one embodiment;

FIG. 3 is a block diagram of system architecture for updating aircraft data, according to one example embodiment;

FIG. 4 is an operational flow diagram of one exemplary method for updating aircraft data using a remote wireless dataload;

FIG. 5 is an operational flow diagram of another exemplary method for updating aircraft data using a remote wireless dataload; and

FIG. 6 is an operational flow diagram of an alternative exemplary method for updating aircraft data using a remote wireless dataload.

DETAILED DESCRIPTION

In the following detailed description, embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It is to be understood that other embodiments may be utilized without departing from the scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense.

A method and system is provided for tracking an aircraft with an older version of software/database, and initiating an autoload of the latest version of the software/database when the aircraft is in safe state for dataload. The present method provides for determining which software/database version is currently installed on the aircraft, and provides various approaches for remotely installing an updated software/database on the aircraft. The present method allows maintenance personnel in a ground operations center to initiate remote dataloading of software/database updates to one or more aircraft, without having to be at or near the aircraft.

Further details of the present method and system are described hereafter with reference to the drawings.

FIG. 1 is a flow diagram of a method 100 for updating aircraft data, according to one implementation. Initially, one or more messages are received at a ground center that one or more aircraft is in a safe state on the ground (block 110), such as at a gate. One or more aircraft in the safe state is then selected to receive a software or database update from the ground center (block 120). The method 100 then verifies that the selected aircraft in the safe state is in need of the software or database update (block 130). The method 100 thereafter initiates a remote loading of the software or database update to the verified selected aircraft in the safe state (block 140). One or more messages are received at the ground center from the verified selected aircraft indicating a status of the remote loading (block 150).

FIG. 2 illustrates an exemplary system 200, which can be employed for updating aircraft data, according to one embodiment. The system 200 generally comprises a ground system 210, which can include one or more database sources, as well as a system end point at a ground center. The ground system 210 is in operative communication with a ground infrastructure 220, which can include Wi-Fi access points, cellular infrastructure, satellite communications (SatCom) infrastructure, and the like.

The ground infrastructure 220 is configured for operative communication with one or more aircraft, such as an aircraft 230, which is located on the ground in a safe state, such as parked at an airport terminal gate. The aircraft 230 includes an aircraft gateway 232, which is configured to communicate with ground infrastructure 220, such as through a wireless connection. The aircraft gateway 232 is in operative communication with an on-board data storage 234, which operatively communicates with one or more target avionics 236.

In order to update the aircraft data for aircraft 230, a message is sent from aircraft gateway 232 to ground system 210 through ground infrastructure 220 that aircraft 230 is in a safe state on the ground. The aircraft 230 is selected to receive a software or database update after verification that aircraft 230 is in need of the update. Remote loading of the software or database update is then initiated from ground system 210, which sends the update through ground infrastructure 220 to aircraft 230. The software or database update is received by aircraft gateway 232 and is then sent to on-board data storage 234. The update is then sent to the appropriate target avionics 236.

FIG. 3 illustrates a system architecture 300, which can be employed for updating aircraft data, according to one example embodiment. The system architecture 300 includes a ground system 310, which can include at least one database provider, at least one airline data consumer, ground support services, and the like. The ground system 310 also includes an operations ground center where a data loading software application (DLS App) is located for remote operation.

The ground system 310 is in operative communication with a ground infrastructure 320, such as through the Internet 324. The ground infrastructure 320 can include Wi-Fi access points, cellular infrastructure, SatCom infrastructure, and the like. The ground infrastructure 320 is configured for operative communication with one or more aircraft located on the ground in a safe state.

An onboard gateway 330 on the aircraft is the aircraft gateway and is configured to wirelessly communicate with ground infrastructure 320. The onboard gateway 330 includes respective Wi-Fi and cellular communication devices 332, 334, as well as a processor 336 and a memory unit 338. The onboard gateway 330 operatively communicates with an onboard data loader 340, such as through an Ethernet connection 342. The data loader 340 includes a memory unit 344, a WiFi radio 346, an Ethernet switch 348, and data loading software 350.

An avionics system 360 onboard the aircraft operatively communicates with data loader 340, such as through an Ethernet bus 352 that is connected to Ethernet switch 348. The avionics system 360 also operatively communicates with onboard gateway 330, such as through an Ethernet connection 354 coupled to Ethernet bus 352. The avionics system 360 includes a set of network interface controller (NIC) modules 362, which communicate with Ethernet bus 352 and also communicate with an avionics standard communications bus (ASCB) 356.

A plurality of line replaceable units (LRUs) in avionics system 360 operatively communicate with NIC modules 362 through a virtual backplane (VBP) bus 364. A communications management unit (CMU) or communication management function (CMF) 366 in avionics system 360 is associated with an LRU 368, which communicates with VBP bus 364. A central maintenance computer (CMC) 370 in avionics system 360 includes data loading software (DLS) 372. The CMC 370 is in communication with Ethernet bus 352 and VBP bus 364. An aircraft condition monitoring system (ACMS) or aircraft condition monitoring function (ACMF) 374 in avionics system 360 is in communication with Ethernet bus 352 and VBP bus 364.

In one method for performing an update operation using system architecture 300, ground system 310 notifies an LRU on the aircraft that a software/database update is available, and the LRU requests data loader 340 to initiate a dataload of the update when a maintenance mode is entered. For example, ground system 310 can send an auto update command by way of a datalink uplink using CMF 366 in the aircraft. The CMF 366 will forward/route the auto update command to the respective LRUs on the aircraft for which the software/database update is needed. Each LRU will save this auto update command and wait for the LRU to enter a maintenance mode. As soon as the maintenance mode is entered, the LRU will automatically request data loader 340 to initiate the dataload update.

In another method for performing an update operation using system architecture 300, CMF 366 monitors a broadcast discrete of an LRU operation state (normal mode or maintenance mode) on the aircraft. When an LRU status enters a maintenance mode (or dataload mode), CMF 366 informs ground system 310 using a datalink message indicating the LRU is available for maintenance (dataload). The ground system 310 can command data loader 340 through CMF 366 using a datalink uplink to initiate the dataload update. Alternatively, ground system 310 can command data loader 340 through onboard gateway 330 to initiate the dataload update.

FIGS. 4-6 are operational flow diagrams showing further details of the various alternative methods for updating aircraft data using a wireless dataload.

In a first updating method 400 shown in FIG. 4, maintenance personnel, by way of a DLS App (block 410), interact with a ground data center (GDC) (block 420), which in turn operatively communicates with at least one LRU (block 430) and a data loader (block 440) onboard an aircraft. The method 400 can provide a control dataload method for one or more aircraft LRUs, for example.

In method 400, the DLS App is used to send a query to the GDC regarding the current software in an aircraft of interest. The GDC is aware of the software available on the data loader (block 422) in the aircraft. In addition, the software for the update is available in the data loader, as the data has already been pushed to the aircraft (block 424). After receiving information from the GDC on the query, the DLS App is used to initiate an auto update uplink, which is sent to the GDC to perform a GDC validation operation at 450. If valid, the GDC forwards the uplink to the LRU, which notifies the LRU that a software/database update is available, and a maintenance mode is entered at 452 to set up an auto update operation. The LRU requests the data loader to initiate the software update when ready. The dataload is started, and the dataloading operation is carried out (block 454). The software used in the maintenance mode for dataloading is proactive and uses a “pull” method for the update. This means that the LRU has some logic that determines which software in the LRU may be updated.

When the dataloading is complete at 456, the auto update operation is cleared, and the maintenance mode is exited (block 458). A status message such as an ACARS message is sent from the LRU to the GDC, which in turn sends a dataload success status message to the DLS App.

The GDC validation can determine that the uplink request is to be rejected (block 460). For example, the GDC validation can determine that uplink of the message to the aircraft is not possible because: the GDC has determined that the airline does not support remote dataloading; or the GDC has determined that the aircraft is not available for the time required to complete the software update.

In another updating method 500 depicted in FIG. 5, maintenance personnel, by way of a DLS App (block 510), interact with a GDC (block 520), which in turn operatively communicates with various aircraft components, including a CMF (block 530), at least one LRU (block 540), and a data loader (block 550).

During method 500, the CMF monitors a broadcast discrete of an LRU operation state (normal mode or maintenance mode), and waits for a maintenance event of any LRU on the aircraft. For example, the aircraft level discrete for dataload can be used to trigger the dataload event (block 532). During a maintenance mode event, a specific LRU is identified for the update (block 534), and a datalink message such as an ACARS message is sent to the GDC. The GDC is aware of the software available on the data loader (block 536) in the aircraft. A notification is then sent to the DLS App from the GDC that the aircraft is available for maintenance.

The DLS App is used to initiate a remote dataload by the GDC, which performs a GDC validation operation at 560. The GDC sends a command message, such as an ACARS message, to the CMF on the aircraft to start the dataload when the software update is available on the data loader. The CMF sends a dataload command to the data loader, which initiates the dataload to the LRU. A dataload status message is sent from the LRU to the data loader, which in turn sends the dataload status message to the CMF. The dataload status message is forwarded from the CMF to the GDC, such as through an ACARS message. The dataload status message is then sent from the GDC to the DLS App.

In an alternative updating method 600 depicted in FIG. 6, maintenance personnel, by way of a DLS App (block 610), interact with a GDC (block 620), which in turn operatively communicates with various aircraft components, including a CMF (block 630), a gateway (block 640), at least one LRU (block 650), and a data loader (block 660).

During method 600, the CMF monitors a broadcast discrete of an LRU operation state (normal mode or maintenance mode), and waits for a maintenance event of any LRU on the aircraft. For example, the aircraft level discrete for dataload can be used to trigger the dataload event (block 632). During a maintenance mode event, a specific LRU is identified for the update (block 634), and a datalink message such as an ACARS message is sent to the GDC. The GDC is aware of the software available on the data loader (block 636) in the aircraft. A notification is then sent to the DLS App from the GDC that the aircraft is available for maintenance.

The DLS App is used to initiate a remote dataload by the GDC, which performs a GDC validation operation at 660. The GDC sends a command message, such as an Internet protocol (IP) message, to the gateway on the aircraft to start the dataload when the software update is available on the data loader. The gateway sends a dataload command to the data loader, which initiates the dataload to the LRU. A dataload status message is sent from the LRU to the data loader, which in turn sends the dataload status message to the gateway. The dataload status message is forwarded from the gateway to the GDC, such as through an IP message. The dataload status message is then sent from the GDC to the DLS App.

A computer or processor used in the present system and method can be implemented using software, firmware, hardware, or any appropriate combination thereof, as known to one of skill in the art. These may be supplemented by, or incorporated in, specially-designed application-specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs). The computer or processor can also include functions with software programs, firmware, or other computer readable instructions for carrying out various process tasks, calculations, and control functions used in the present method and system.

The present method can be implemented by computer executable instructions, such as program modules or components, which are executed by at least one processor. Generally, program modules include routines, programs, objects, data components, data structures, algorithms, and the like, which perform particular tasks or implement particular abstract data types.

Instructions for carrying out the various process tasks, calculations, and generation of other data used in the operation of the methods described herein can be implemented in software, firmware, or other computer-readable or processor-readable instructions. These instructions are typically stored on any appropriate computer program product that includes a computer readable medium used for storage of computer readable instructions or data structures. Such a computer readable medium can be any available media that can be accessed by a general purpose or special purpose computer or processor, or any programmable logic device.

Suitable processor-readable media may include storage or memory media such as magnetic or optical media. For example, storage or memory media may include conventional hard disks, compact disks, DVDs, Blu-ray discs, or other optical storage disks; volatile or non-volatile media such as Random Access Memory (RAM); Read Only Memory (ROM), Electrically Erasable Programmable ROM (EEPROM), flash memory, and the like; or any other media that can be used to carry or store desired program code in the form of computer executable instructions or data structures.

Example Embodiments

Example 1 includes a method for updating aircraft data, the method comprising: receiving one or more messages at a ground system that one or more aircraft is in a safe state on the ground; selecting one or more aircraft in the safe state to receive a software or database update from the ground system; verifying that the selected one or more aircraft in the safe state is in need of the software or database update; initiating a remote loading of the software or database update to the verified selected one or more aircraft in the safe state; and receiving one or more messages at the ground system from the verified selected one or more aircraft indicating a status of the remote loading.

Example 2 includes the method of Example 1, wherein the ground system comprises one or more database sources, and an operations center where a data loading software application is located.

Example 3 includes the method of any of Examples 1-2, wherein the ground system is in operative communication with a ground infrastructure comprising one or more Wi-Fi access points, a cellular communications infrastructure, or a satellite communications infrastructure.

Example 4 includes the method of Example 3, wherein the ground infrastructure is configured for operative communication with the one or more aircraft in the safe state on the ground.

Example 5 includes the method of Example 4, wherein the one or more aircraft includes an aircraft gateway, which is configured to communicate with the ground infrastructure through a wireless connection.

Example 6 includes the method of Example 5, wherein the aircraft gateway is in operative communication with an on-board data storage, which operatively communicates with one or more onboard target avionics.

Example 7 includes the method of Example 6, wherein a message received at the ground system that an aircraft is in a safe state on the ground, is sent from the aircraft gateway through the ground infrastructure.

Example 8 includes the method of Example 7, wherein the remote loading of the software or database update is initiated by the data loading software application.

Example 9 includes the method of Example 8, wherein the software or database update is received by the aircraft gateway and is sent to the on-board data storage.

Example 10 includes the method of Example 9, wherein the software or database update is sent from the on-board data storage to the one or more onboard target avionics.

Example 11 includes a system for updating aircraft data, the system comprising: at least one processor located in a ground operations center; and a non-transitory computer readable medium including instructions executable by the at least one processor to perform a method for updating aircraft data comprising: receiving one or more messages that one or more aircraft is in a safe state on the ground; selecting one or more aircraft in the safe state to receive a software or database update; verifying that the selected one or more aircraft in the safe state is in need of the software or database update; initiating a remote loading of the software or database update to the verified selected one or more aircraft in the safe state; and receiving one or more messages from the verified selected one or more aircraft indicating a status of the remote loading.

Example 12 includes the system of Example 11, wherein the ground operations center includes at least one database provider.

Example 13 includes the system of any of Examples 11-12, wherein the ground operations center is in operative communication with a ground infrastructure comprising one or more Wi-Fi access points, a cellular communications infrastructure, or a satellite communications infrastructure.

Example 14 includes the system of Example 13, wherein the ground infrastructure is configured for operative communication with the one or more aircraft in the safe state on the ground.

Example 15 includes the system of Example 14, wherein the one or more aircraft comprises: an onboard gateway configured to wirelessly communicate with the ground infrastructure; a data loader in operative communication with the onboard gateway; and an avionics system comprising: a communications management function in operative communication with the onboard gateway and the data loader; and one or more line replaceable units in operative communication with the communications management function and the data loader.

Example 16 includes the system of any of Examples 11-15, wherein the remote loading of the software or database update is initiated by a data loading software application located in the ground operations center.

Example 17 includes the system of any of Examples 15-16, wherein the remote loading of the software or database update comprises: sending an auto update command from the ground operations center to the communications management function through a datalink message; forwarding the auto update command from the communications management function to a line replaceable unit for which the software or database update is needed; saving the auto update command at the line replaceable unit until a maintenance mode for the line replaceable unit is entered; and when the maintenance mode is entered, sending a request from the line replaceable unit to the data loader to start the software or database update at the line replaceable unit.

Example 18 includes the system of any of Examples 15-16, wherein the remote loading of the software or database update comprises: sending a dataload update command from the ground operations center to the communications management function through a datalink message; and forwarding the dataload update command from the communications management function to the data loader to start the software or database update at a line replaceable unit for which the software or database update is needed.

Example 19 includes the system of any of Examples 15-16, wherein the remote loading of the software or database update comprises: sending a dataload update command from the ground operations center to the onboard gateway through the ground infrastructure; and forwarding the dataload update command from the onboard gateway to the data loader to start the software or database update at a line replaceable unit for which the software or database update is needed.

Example 20 includes a computer program product, comprising: a non-transitory computer readable medium including instructions executable by a processor to perform a method for updating aircraft data comprising: receiving one or more messages that one or more aircraft is in a safe state on the ground; selecting one or more aircraft in the safe state to receive a software or database update; verifying that the selected one or more aircraft in the safe state is in need of the software or database update; initiating a remote loading of the software or database update to the verified selected one or more aircraft in the safe state; and receiving one or more messages from the verified selected one or more aircraft indicating a status of the remote loading.

The present invention may be embodied in other specific forms without departing from its essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is therefore indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope. 

1-20. (canceled)
 21. A method for updating aircraft data on one or more aircraft, the method comprising: selecting, by a ground system, one or more aircraft in a safe state on the ground to receive a software or database update from the ground system; verifying, by the ground system, that the selected one or more aircraft in the safe state is in need of the software or database update; and initiating, by the ground system, a remote loading of the software or database update to the verified selected one or more aircraft in the safe state, wherein the remote loading comprises: sending an auto update command from the ground system to a target avionics component for which the software or database update is needed; saving the auto update command at the target avionics component until a different mode for the target avionics component is entered; and when the different mode is entered, sending a request from the target avionics component to a data loader onboard the aircraft to start the software or database update at the avionics component.
 22. The method of claim 21, further comprising: determining, by the ground system, that the one or more aircraft are in the safe state on the ground prior to selecting the one or more aircraft to receive the software or database update.
 23. The method of claim 21, further comprising: determining, by the ground system, whether each of the selected one or more aircraft will be in the safe state on the ground for an amount of time required to complete the software or database update.
 24. The method of claim 21, further comprising: determining, by the ground system, whether the aircraft can receive the remote dataload.
 25. The method of claim 21, further comprising: sending, by the ground system, one or more messages to the target avionics component on the aircraft indicating that a software or database update is available.
 26. The method of claim 21, further comprising: receiving, by the ground system, one or more dataload status messages from the one or more aircraft indicating a status of the remote loading.
 27. The method of claim 21, wherein the remote loading of the software or database update is initiated by a data loading software application.
 28. A method for updating aircraft data on one or more aircraft, the method comprising: selecting, by a ground system, one or more aircraft in a safe state on the ground to receive a software or database update from the ground system; verifying, by the ground system, that the selected one or more aircraft in the safe state is in need of the software or database update; and initiating, by the ground system, a remote loading of the software or database update to the verified selected one or more aircraft in the safe state, wherein the remote loading comprises: sending a message from the ground system to the aircraft to start a dataload when the software or database update is available on a data loader of the aircraft; sending a dataload command to the data loader when the software or database update is available on the data loader; and initiating the dataload from the data loader to a target avionics component to start the software or database update at the target avionics component.
 29. The method of claim 28, wherein the message is sent to a communication management function associated with the target avionics component.
 30. The method of claim 29, wherein the message is an aircraft communications addressing and reporting system (ACARS) message.
 31. The method of claim 28, wherein the message is sent to a gateway onboard the aircraft.
 32. The method of claim 31, where in the message is an Internet protocol (IP) message.
 33. The method of claim 28, wherein the verifying includes: monitoring a broadcast discrete of the target avionics component operation state; and receiving an indication of a change of operation state of the target avionics component.
 34. The method of claim 33, further comprising: receiving one or more messages at the ground system that the target avionics component has entered a different operation state.
 35. The method of claim 28, further comprising: receiving, by the ground system, one or more dataload status messages from the one or more aircraft indicating a status of the remote loading.
 36. A system for updating aircraft data on one or more aircraft, the system comprising: at least one processor located in a ground operations center; and a non-transitory computer readable medium including instructions executable by the at least one processor to perform a method for updating aircraft data on one or more aircraft comprising: selecting, by the least one processor, one or more aircraft in a safe state on the ground to receive a software or database update from the ground system; verifying, by the at least one processor, that the selected one or more aircraft in the safe state is in need of the software or database update; and initiating, by the at least one processor, a remote loading of the software or database update to the verified selected one or more aircraft in the safe state, wherein the remote loading comprises: sending a message from the ground operations center to the aircraft to start a dataload when the software or database update is available on a data loader of the aircraft; sending a dataload command to the data loader when the software or database update is available on the data loader; and initiating the dataload from the data loader to a target avionics component to start the software or database update at the target avionics component.
 37. The system of claim 36, wherein the message is sent to a communication management function associated with the target avionics component.
 38. The system of claim 37, wherein the message is an aircraft communications addressing and reporting system (ACARS) message.
 39. The system of claim 36, wherein the message is sent to a gateway onboard the aircraft.
 40. The system of claim 39, where in the message is an Internet protocol (IP) message. 